''========================================================
'' Autor: 		Luis Antonio Lara Capetillo
'' Fecha Creación: 	17/12/2012
'' Descripcion: 	Clase Componente ctlEnmiendaServicios
''========================================================

Public Class ctlEnmiendaServicios
  Inherits System.Web.UI.UserControl
#Region "Propiedades"
  ''' <summary>
  ''' Obtiene o estable el valor Muelle_Origen del TextBox txtMuelle_Origen
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property NidMuelle_Origen() As String
    Get
      Return Me.hfMuelle_Origen.Value
    End Get
    Set(value As String)
      Me.hfMuelle_Origen.Value = value
    End Set
  End Property
  ''' <summary>
  ''' Obtiene o estable el valor Muelle_Origen del TextBox txtMuelle_Origen
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Muelle_Origen() As String
    Get
      Return Me.txtMuelle_Origen.Text
    End Get
    Set(value As String)
      Me.txtMuelle_Origen.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor Muelle_Destino del TextBox txtMuelle_Destino
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property NidMuelle_Destino() As String
    Get
      Return Me.hfMuelle_Destino.Value
    End Get
    Set(value As String)
      Me.hfMuelle_Destino.Value = value
    End Set
  End Property
  ''' <summary>
  ''' Obtiene o estable el valor Muelle_Destino del TextBox txtMuelle_Destino
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Muelle_Destino() As String
    Get
      Return Me.txtMuelle_Destino.Text
    End Get
    Set(value As String)
      Me.txtMuelle_Destino.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene el nid de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>numero de nid seleccionado</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NidEmp_Remolcadores() As Int32
    Get
      If cbxEmp_Remolcadores.SelectedValue = "- Seleccione una opcion -" Then
        Return 0
      Else
        Return CInt(cbxEmp_Remolcadores.SelectedValue)
      End If
    End Get
  End Property
  ''' <summary>
  ''' Obtiene el nombre de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>nombre de la opcion seleccionada</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NombreEmp_Remolcadores() As String
    Get
      If cbxEmp_Remolcadores.SelectedItem.Text = "- Seleccione una opcion -" Then
        Return ""
      Else
        Return cbxEmp_Remolcadores.SelectedItem.Text
      End If
    End Get
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor Num_Remolcadores del componente lblNum_Remolcadores
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Num_Remolcadores() As String
    Get
      Return Me.lblNum_Remolcadores.Text
    End Get
    Set(value As String)
      Me.lblNum_Remolcadores.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene el nid de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>numero de nid seleccionado</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NidEmp_Lanchas() As Int32
    Get
      If cbxEmp_Lanchas.SelectedValue = "- Seleccione una opcion -" Then
        Return 0
      Else
        Return CInt(cbxEmp_Lanchas.SelectedValue)
      End If
    End Get
  End Property
  ''' <summary>
  ''' Obtiene el nombre de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>nombre de la opcion seleccionada</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NombreEmp_Lanchas() As String
    Get
      If cbxEmp_Lanchas.SelectedItem.Text = "- Seleccione una opcion -" Then
        Return ""
      Else
        Return cbxEmp_Lanchas.SelectedItem.Text
      End If
    End Get
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor Num_Lanchas del componente lblNum_Lanchas
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Num_Lanchas() As String
    Get
      Return Me.lblNum_Lanchas.Text
    End Get
    Set(value As String)
      Me.lblNum_Lanchas.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene el nid de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>numero de nid seleccionado</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NidEmp_Pilotos() As Int32
    Get
      If cbxEmp_Pilotos.SelectedValue = "- Seleccione una opcion -" Then
        Return 0
      Else
        Return CInt(cbxEmp_Pilotos.SelectedValue)
      End If
    End Get
  End Property
  ''' <summary>
  ''' Obtiene el nombre de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>nombre de la opcion seleccionada</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NombreEmp_Pilotos() As String
    Get
      If cbxEmp_Pilotos.SelectedItem.Text = "- Seleccione una opcion -" Then
        Return ""
      Else
        Return cbxEmp_Pilotos.SelectedItem.Text
      End If
    End Get
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor Num_Pilotos del componente lblNum_Pilotos
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Num_Pilotos() As String
    Get
      Return Me.lblNum_Pilotos.Text
    End Get
    Set(value As String)
      Me.lblNum_Pilotos.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene el nid de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>numero de nid seleccionado</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NidEmp_Amarradores() As Int32
    Get
      If cbxEmp_Amarradores.SelectedValue = "- Seleccione una opcion -" Then
        Return 0
      Else
        Return CInt(cbxEmp_Amarradores.SelectedValue)
      End If
    End Get
  End Property
  ''' <summary>
  ''' Obtiene el nombre de la opcion seleccionada
  ''' </summary>
  ''' <value></value>
  ''' <returns>nombre de la opcion seleccionada</returns>
  ''' <remarks></remarks>
  Public ReadOnly Property NombreEmp_Amarradores() As String
    Get
      If cbxEmp_Amarradores.SelectedItem.Text = "- Seleccione una opcion -" Then
        Return ""
      Else
        Return cbxEmp_Amarradores.SelectedItem.Text
      End If
    End Get
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor Num_Amarradores del componente lblNum_Amarradores
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property Num_Amarradores() As String
    Get
      Return Me.lblNum_Amarradores.Text
    End Get
    Set(value As String)
      Me.lblNum_Amarradores.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Habilita o Desabilita el Control para Edicion
  ''' </summary>
  ''' <value>True o False</value>
  ''' <remarks></remarks>
  Public WriteOnly Property Enabled() As Boolean
    Set(value As Boolean)
	  txtMuelle_Origen.Enabled=value
      txtMuelle_Destino.Enabled=value
      cbxEmp_Remolcadores.Enabled=value
      cbxEmp_Lanchas.Enabled=value
      cbxEmp_Pilotos.Enabled=value
      cbxEmp_Amarradores.Enabled=value
      
    End Set
  End Property

  ''' <summary>
  ''' Habilita o Desabilita el Control para solo lectura
  ''' </summary>
  ''' <value>True o False</value>
  ''' <remarks>ReadOnly</remarks>
  Public WriteOnly Property Lectura() As Boolean
    Set(value As Boolean)
	  txtMuelle_Origen.ReadOnly=value
      txtMuelle_Destino.ReadOnly=value
      cbxEmp_Remolcadores.ReadOnly=value
      cbxEmp_Lanchas.ReadOnly=value
      cbxEmp_Pilotos.ReadOnly=value
      cbxEmp_Amarradores.ReadOnly=value
      
    End Set
  End Property


#End Region
#Region "Eventos"
  Protected Sub btn?NomCampo_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles btn?NomCampo.Click
    
  End Sub

  Protected Sub btn?NomCampo_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles btn?NomCampo.Click
    
  End Sub

  Protected Sub cbxEmp_Remolcadores_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles cbxEmp_Remolcadores.SelectedIndexChanged
    
  End Sub

  Protected Sub cbxEmp_Lanchas_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles cbxEmp_Lanchas.SelectedIndexChanged
    
  End Sub

  Protected Sub cbxEmp_Pilotos_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles cbxEmp_Pilotos.SelectedIndexChanged
    
  End Sub

  Protected Sub cbxEmp_Amarradores_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles cbxEmp_Amarradores.SelectedIndexChanged
    
  End Sub

#End Region

#Region "Metodos"

  ''' <summary>
  ''' Metodo para llenar cbxEmp_Remolcadores con datos de un DataTable y seleciona el primero
  ''' </summary>
  ''' <param name="data"> Tabla con los datos</param>
  ''' <param name="nombre">Nombre de la columna de los nombres</param>
  ''' <param name="nid"> Nombre de la columna con los nid</param>
  ''' <remarks></remarks>
  Public Sub llenarcbxEmp_Remolcadores(ByVal data As DataTable, ByVal nombre As String, ByVal nid As String)
    Me.cbxEmp_Remolcadores.DataSource = data
    Me.cbxEmp_Remolcadores.DataTextField = nombre.ToString
    Me.cbxEmp_Remolcadores.DataValueField = nid.ToString
    Me.cbxEmp_Remolcadores.DataBind()
    Me.cbxEmp_Remolcadores.Items.Add("- Seleccione una opcion -")
    Me.cbxEmp_Remolcadores.SelectedIndex = Me.cbxEmp_Remolcadores.Items.Count - 1
  End Sub

  ''' <summary>
  ''' Metodo para llenar cbxEmp_Lanchas con datos de un DataTable y seleciona el primero
  ''' </summary>
  ''' <param name="data"> Tabla con los datos</param>
  ''' <param name="nombre">Nombre de la columna de los nombres</param>
  ''' <param name="nid"> Nombre de la columna con los nid</param>
  ''' <remarks></remarks>
  Public Sub llenarcbxEmp_Lanchas(ByVal data As DataTable, ByVal nombre As String, ByVal nid As String)
    Me.cbxEmp_Lanchas.DataSource = data
    Me.cbxEmp_Lanchas.DataTextField = nombre.ToString
    Me.cbxEmp_Lanchas.DataValueField = nid.ToString
    Me.cbxEmp_Lanchas.DataBind()
    Me.cbxEmp_Lanchas.Items.Add("- Seleccione una opcion -")
    Me.cbxEmp_Lanchas.SelectedIndex = Me.cbxEmp_Lanchas.Items.Count - 1
  End Sub

  ''' <summary>
  ''' Metodo para llenar cbxEmp_Pilotos con datos de un DataTable y seleciona el primero
  ''' </summary>
  ''' <param name="data"> Tabla con los datos</param>
  ''' <param name="nombre">Nombre de la columna de los nombres</param>
  ''' <param name="nid"> Nombre de la columna con los nid</param>
  ''' <remarks></remarks>
  Public Sub llenarcbxEmp_Pilotos(ByVal data As DataTable, ByVal nombre As String, ByVal nid As String)
    Me.cbxEmp_Pilotos.DataSource = data
    Me.cbxEmp_Pilotos.DataTextField = nombre.ToString
    Me.cbxEmp_Pilotos.DataValueField = nid.ToString
    Me.cbxEmp_Pilotos.DataBind()
    Me.cbxEmp_Pilotos.Items.Add("- Seleccione una opcion -")
    Me.cbxEmp_Pilotos.SelectedIndex = Me.cbxEmp_Pilotos.Items.Count - 1
  End Sub

  ''' <summary>
  ''' Metodo para llenar cbxEmp_Amarradores con datos de un DataTable y seleciona el primero
  ''' </summary>
  ''' <param name="data"> Tabla con los datos</param>
  ''' <param name="nombre">Nombre de la columna de los nombres</param>
  ''' <param name="nid"> Nombre de la columna con los nid</param>
  ''' <remarks></remarks>
  Public Sub llenarcbxEmp_Amarradores(ByVal data As DataTable, ByVal nombre As String, ByVal nid As String)
    Me.cbxEmp_Amarradores.DataSource = data
    Me.cbxEmp_Amarradores.DataTextField = nombre.ToString
    Me.cbxEmp_Amarradores.DataValueField = nid.ToString
    Me.cbxEmp_Amarradores.DataBind()
    Me.cbxEmp_Amarradores.Items.Add("- Seleccione una opcion -")
    Me.cbxEmp_Amarradores.SelectedIndex = Me.cbxEmp_Amarradores.Items.Count - 1
  End Sub

  ''' <summary>
  ''' Metodo para asignar los datos al componente ctlTurismo
  ''' </summary>
  ''' <param name="tablaDatos">DataTable donde se obtienen los datos</param>
  ''' <remarks></remarks>
  Public Sub AsignarDatos(ByVal tablaDatos As DataTable)
    Me.txtMuelle_Origen.Text= tablaDatos.Rows(0)("Muelle_Origen").ToString
    Me.txtMuelle_Destino.Text= tablaDatos.Rows(0)("Muelle_Destino").ToString
    
  End Sub

#End Region
End Class
